package com.quick.common.dto;

import com.alibaba.fastjson.annotation.JSONField;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.data.elasticsearch.annotations.Document;
import org.springframework.data.elasticsearch.annotations.Field;
import org.springframework.data.elasticsearch.annotations.FieldType;

import javax.persistence.Id;
import java.io.Serializable;

/**
 * @author: DESKTOP-OPJHSPM
 * @date: Created in 2021-02-01 09:10:22
 * @description: 商品基本信息表
 * @version: 1.0
 */
@Document(indexName = "dts_goods",type = "dts_goods")
@Data
@NoArgsConstructor
@AllArgsConstructor
public class DtsGoodsDto implements Serializable {

	private static final long serialVersionUID = 1800421509483644416L;

	@Id
	@JSONField(name ="id")
	private long id;


	/**
	 * 商品编号
	 */
	@Field(type = FieldType.Keyword)
	@JSONField(name ="goodsSn")
	private String goodsSn;


	/**
	 * 商品名称
	 */
	@Field(type = FieldType.Text)
	@JSONField(name ="name")
	private String name;


	/**
	 * 商品所属类目ID
	 */
	@JSONField(name ="categoryId")
	private long categoryId;

	@JSONField(name ="brandId")
	private long brandId;


	/**
	 * 商品宣传图片列表，采用JSON数组格式
	 */
	@JSONField(name ="gallery")
	private String gallery;


	/**
	 * 商品关键字，采用逗号间隔
	 */
	@Field(type = FieldType.Keyword)
	@JSONField(name ="keywords")
	private String keywords;


	/**
	 * 商品简介
	 */
	@JSONField(name ="brief")
	private String brief;


	/**
	 * 是否上架
	 */
	@JSONField(name ="isOnSale")
	private long isOnSale;

	@JSONField(name ="sortOrder")
	private long sortOrder;


	/**
	 * 商品页面商品图片
	 */
	@JSONField(name ="picUrl")
	private String picUrl;


	/**
	 * 商品分享朋友圈图片
	 */
	@JSONField(name ="shareUrl")
	private String shareUrl;


	/**
	 * 是否新品首发，如果设置则可以在新品首发页面展示
	 */
	@JSONField(name ="isNew")
	private long isNew;


	/**
	 * 是否人气推荐，如果设置则可以在人气推荐页面展示
	 */
	@JSONField(name ="isHot")
	private long isHot;


	/**
	 * 商品单位，例如件、盒
	 */
	@JSONField(name ="unit")
	private String unit;


	/**
	 * 专柜价格
	 */
	@JSONField(name ="counterPrice")
	private double counterPrice;


	/**
	 * 零售价格
	 */
	@JSONField(name ="retailPrice")
	private double retailPrice;


	/**
	 * 商品详细介绍，是富文本格式
	 */
	@JSONField(name ="detail")
	private String detail;


	/**
	 * 创建时间
	 */
	@JSONField(name ="addTime")
	private String addTime;


	/**
	 * 更新时间
	 */
	@JSONField(name ="updateTime")
	private String updateTime;


	/**
	 * 浏览量
	 */
	@JSONField(name ="browse")
	private long browse;


	/**
	 * 已销售总量
	 */
	@JSONField(name ="sales")
	private long sales;


	/**
	 * 逻辑删除
	 */
	@JSONField(name ="deleted")
	private long deleted;


	/**
	 * 供货单位
	 */
	@JSONField(name ="commpany")
	private String commpany;


	/**
	 * 批发价格
	 */
	@JSONField(name ="wholesalePrice")
	private double wholesalePrice;


	/**
	 * 审批状态 ：4 未提交  0 待审批  1 审批通过 2 审批拒绝
	 */
	@JSONField(name ="approveStatus")
	private long approveStatus;


	/**
	 * 审批内容
	 */
	@JSONField(name ="approveMsg")
	private String approveMsg;


	/**
	 * 佣金类型 ： 0 无推广佣金  1 自定义佣金 2 代理审批比例
	 */
	@JSONField(name ="brokerageType")
	private long brokerageType;


	/**
	 * 推广佣金金额
	 */
	@JSONField(name ="brokeragePrice")
	private double brokeragePrice;

}
